was originally part of the supposedly last write-up
on this site’s particular Planck keyboard layout. The annotations grew,
then
became long enough to warrant being separated out into its own update page here!
In chronological order, a long list of tweaks (whose number was thought to be an
indicator of approaching completion—obviously not)! As only the current
layouts are illustrated here, it will be somewhat challenging to
picture the many keymap transitions from the ergo wide layout
starting point.
Audio capability was eventually disabled in favour of keyboard mouse
controls
due to on board memory constraints. Future Planck PCB’s may utilize more current
processors with increased RAM. For now, functionality literally trumps bells and
whistles.
The list itself should provide a sense of the iterative process involved in the
refinement of this particular Planck layout..
- the centre column pairings of Shift-GUI, Ctrl-GUI and
Shift-Alt, Ctrl-Alt changed to Ctrl-Alt, Ctrl-GUI and
Shift-Alt, Shift-GUI effectively aligning Alt and GUI
modifiers in their own columns, a grouping which better suits the
needs of the window manager work flow
- the number layer Symbol Layer key is moved left one column
position and the symbol layer Regex Layer key is similarly moved
right one column position and are now toggled with the ring fingers
which feel less cramped than their former middle finger assignment
- the Caps Lock key is now a one shot modifier Shift key (which
is double tapped to toggle the Caps Lock), completing the set of
one shot modifiers
- the Function keys have been remapped to match the numeric keypad layout of
the number layer, naturally
- the double tap key pairs of the number layer have been normalized
with the symbol layer by swapping their key positions with the outer
column modifier keys (used mainly for window manager desktop actions)
which, while looking odd, retain a comfortable pinkie-index finger
roll
- the number layer column of one shot modifier keys has been changed
to dedicated Alt modifier chords in optimal row positions (for
window manager desktop actions)
- the number layer Symbol Layer and symbol layer Regex Layer keys
are now positioned in their most obvious location (how was any other location
considered?)—the middle finger home row!—with the Right
Angle key
now defined as a double tap key
- added a Shift Navigation cluster layer to the left Shift
Layer, completing the quadruplet (Ctrl, Meta,
Alt, Shift) of single modifier navigation
chords—the thumb Shift avoids the reach required for the centre
column one shot modifier Shift key
- added the same Shift Navigation cluster layer to the Symbol
Layer including switching between shifted and
unshifted navigation codes by simply releasing/pressing the Left
Shift / Pipe key while the Left (cursor) / Symbol Layer key is
held down, whilst allowing rolling between the Shift and
Symbol layers seamlessly without the need to lift both thumbs off their
respective keys to switch layers (easier to appreciate in use than explain!)
- dropped the Plover Layer (and other test code) to accommodate the
increased size of the latest code base and available flash RAM
- recovered sufficient RAM space to re-add the Plover Layer by
dropping the dedicated Macro Layer (which defined only a single
key, the Dynamic Macro key) and refactoring the keymap code—the popular
Planck Tri-Layer Toggle (using the Number and Symbol Layer keys
together) is now dropped in favour of a single Backspace / Macro key
(labeled Adjust) to raise the Adjustment Layer and the Dynamic
Macro key
- added the complement of home row one shot modifiers to the Function Key
and Shift Navigation cluster layers
- added the obvious (but overlooked) Shift-Tab to the right
Shift Layer
- added the complement of home row one shot modifiers to the Number Layer
(shifting the Symbol Overlay Layer key to the pinkie), moving the
Angle Brackets down one row
- moved the Angle Brackets down one row on the Symbol Layer, and shifted
the Regex Overlay Layer key to the pinkie to mirror the Number Layer
- swapped the Dot and Backslash keys on the Symbol Layer to rolling
finger positions
- added the Angle Brackets to the Adjust Layer in their familiar shift
positions (Comma and Dot keys), mirroring the Number and Symbol
Layers
- redefined the Number Layer as a numeric keypad with basic mathematical
operators—calculator mode being somewhat more useful than straight
hexadecimal input—and assigned the Hexadecimal characters to the Hex
Symbol Overlay Layer (whose index/pinkie finger locations still look
somewhat odd but remain easy to remember) along with the Backslash,
Pipe and Tilde keys
- not a layout change, but fixed the frequent new sentence (left thumb tap plus down) Space plus
Shift sequence which the process_user_function firmware latency (as
coded) can fail to recognize during rapid touch typing—auto-repeating
Space now requires left thumb double tap plus down, and Modifier
Space chords are limited to one shot modifier key plus Space
- dropped the Dynamic Macro Layer to reduce reported flash memory size below
100%—macro recording was being truncated even with reduced buffer
allocation
- redesigned the Number Layer and its associated Hexadecimal Overlay Layer
layouts,
moving the A B C hexadecimal keys to the Number Layer and D E F keys
in their overlay position, so the
Hexadecimal Overlay Layer and Regex Overlay Layer of the Symbol Layer
can be defined as a single layer (freeing up precious bytes of flash memory
space)
- in lieu of dynamic macro strings, added a compile time double tap macro string
to the Function Key Layer (which is flash persistent)—one is good enough
for now
- fixed the one shot modifier restriction side effect of the tap dance
Space Shift sequence to recognize all Modifier Space chords
- corrected similar latency issue with rapid new paragraph (right thumb tap
plus down) Enter plus Shift key sequence—with double tap plus
down to produce auto-repeating Enter
- squeezed in QWERTY layout and associated left/right Shift Layers (with similar symbol mappings
for non-alpha keys)
- left symbol (pair) “double tap” keys can now be triple tapped to place the
cursor inside the enclosing right character
- the Adjust Layer now omits all unused QMK firmware settings, relocating
the remaining firmware settings to the left hand side and moving the custom
macro keys to the right (with corresponding adjustments to the Function Key
and Plover layers)
- lining up the centre column modifiers with the one shot modifiers
of the Numberic Keypad Layer, swapping the home row Ctrl-Alt and Ctrl-GUI
keys with the top row Shift keys of the centre column
- completed the available triple tap symbol key pairs
- Colemak layout tweaking, remapping the Z, V and X keys
- more Colemak layout tweaking, swapping the FC keys
- added one shot to double tap Space and Enter—a significant feature IMO
- minor key mapping change to the Number Layer Overlay relocating the
Backslash and Bar keys
- added one shot to Number Layer to define one shot symbols
and relocate symbol pairs and hexadecimal characters to separate layer
- added triple tap Tilde, triple tap (double tap plus down) to auto-repeat, double tap to insert common
UNIX home directory “~/”
- yet more Colemak layout tweaking, swapping the PG keys
- disabled all firmware extensions in Makefile except for NKRO and tap
dance, freeing up 30% of available memory space!
- a few Haskell language shortcuts, adding <-, -> and ::
double taps to the Adjust and Shift Layers
- add Vim G to Number Layer Overlay
- altered the navigation cluster layout of the Symbol
Navigation Layer, relocating the PgUp and PgDn keys a la
GuiFn, and the Angle Brackets to their normal shift
positions
- the Shift Navigation Layer adds the Shift modifier (versus defaulting to
shifted keycodes) providing greater modifier chord flexibility
- align left hand home row modifier keys of Number, Symbol and Function Key
layers to default layout order and assign overlay layer toggling to index
finger—no more pinkie finger responsibilities (almost)!
- minor change with Number Layer Space and Backslash now mirroring
left hand positions of Default and Symbol Layers
- delete redundant Asterisk on Number Overlay Layer and add Question
Mark (with vertical alignment of this key and Tilde to their shift layer
assignments)
- revert to pseudo Tri-Layer toggle of the Adjust Layer using the
Number and
Symbol Layer keys together, freeing up the Adjust layer toggle key
- add home row modifiers to the
Symbol Navigation Layer, eliminating the previous overlay layer and its
associated double finger activation (by implementing modifier toggle function
for shifted keycodes)
- add Edit Layer common keyboard shortcuts, restoring the ZXCV cluster
(but on the home row!) and terminal key chord equivalents in optimal finger
locations
- add Mouse Action Layer overlay to Symbol Navigation and Shift Overlay
layers with rolling layer alternation (to
seamlessly switch between keyboard cursor/page and mouse
pointer/scroll actions)
- align Number Layer hexadecimal overlay with index, middle and ring
fingers, with mirroring of Symbol Layer bracket pairs
- add Control codes to the Edit Layer (in search of a useful set!)
- map Adjust Layer keys to NOP locations of Mouse Action Layer to
block accidental settings (from adjacent layer activation
keys)
- refine Symbol Overlay Layer layout (taking into consideration the
Number Overlay Layer and regex lookahead/lookbehind fingering
combinations)
- optimized index finger layout PB and MK
swaps
- add Brackets Overlay Layer to Function Key Layer
- Planck build script directives now only define a single base layer—
Colemax, Mod-DH or QWERTY—removing alternate keyboard layouts from
the Adjust Layer (due to LT macro 16 layer limit)
- add BEAKL layout
- assign the bracket pair double tap action to the index finger (which
delegates the closing brackets for the left hand on the Symbol
Layer!)
- flatten the Number Layer by splitting the hex and decimal characters
between the left and right hands (eliminating the separate hex overlay
layer)
- drop redundant Brackets Overlay Layer from Function Key Layer, and
refactor Number and
Symbol Layer overlay symbol sets
- add Programming Shift Layers option to BEAKL layout
- move 0 to thumb key of Number Layer
- add CapsLock to Right Shift Layer thumb row
- adjust Symbol Layer Overlay Angle Brackets to match Programming
Shift Layers home row position
- add triple tap functionality to Symbol Layer Overlay Angle Brackets
- remap home block symbol clusters of Beakl shift layers, optimizing the
Equal comparison bigrams
- expand home block symbol clusters (and eliminate ring finger usage) and drop the Number and Symbol Layer
overlays
- add mash up BEAKL 8 and BEAKL 10 (Planck done to Planck redux!)
- add Shift Toggle to BEAKL A to allow left/right handed Shift
Navigation Layer access (purely a Vim workflow convenience)
- adopt BEAKL 8 Ian Mod
- swap X Z keys for ring finger strike of corner Q X keys
- swap J Z keys to favour (subjective) left hand Z and J
rolls (with minor improvement in English prose
keyboard layout test)
- add Slash and Dot to home block symbol clusters for Haskell
/=, HTML </ and regex .* operators
- move Dollar and Caret of home block symbol clusters from
index to ring fingers for better rolls
- swap Dot and Dollar of right hand home block symbol cluster
for better finger rolls
- full left/right home row modifier clusters for Ctrl GUI Alt Shift
- with home row modifiers, replace the redundant center column modifier
chords with layer toggles (locks) for FnKeys, Cursor, Mouse, Number
and Regex (which flattens the left and right hand home block symbol
clusters), along with Caps—these layers mirror their thumb
switched layer counterparts with a few tweaks by virtue of the freed
thumb
- allow switching TG layers without need for toggling the currently
active TG layer off
- add a convenient left thumb Esc break out of the above TG
layers (and Caps)
- convert TG to single tap TT layers (to be more like OSM)
Finally, Planck redux!..